library(tidyverse)
── Attaching packages ───────────────────────────────────────────────────────────────── tidyverse 1.2.1 ──
✔ ggplot2 3.1.0     ✔ purrr   0.2.5
✔ tibble  2.0.1     ✔ dplyr   0.7.8
✔ tidyr   0.8.2     ✔ stringr 1.3.1
✔ readr   1.3.1     ✔ forcats 0.3.0
package ‘tibble’ was built under R version 3.5.2── Conflicts ──────────────────────────────────────────────────────────────────── tidyverse_conflicts() ──
✖ dplyr::filter() masks stats::filter()
✖ dplyr::lag()    masks stats::lag()
library(here)
here() starts at /Users/scottericr/Documents/Tufts/Research Projects/PLS Oecologia
library(neonUtilities)

After chatting with Katie at NEON, we decided a good place to start would be with small mammal data and vegetation data. She recommended three data products: the small mammal trapping data which is capture-recapture data collected monthly and includes morphology measures and tick counts; the plant presence and percent cover data product which includes presence and percent cover of different plant species; and Woody Plant Vegetation Structure which includes morphological measures of woody plants

Let’s start with woody plants. This dataset is measured every three years, so I’ll get three years of data from a bunch of sites and collapse it down somehow.

stackByTable(here("data", "NEON", "NEON_presence-cover-plant.zip")) # only need to run once
Unpacking zip files

  |                                                                                                      
  |                                                                                                |   0%
  |                                                                                                      
  |==                                                                                              |   2%
  |                                                                                                      
  |================================================================================================| 100%
Stacking table div_10m2Data100m2Data

  |                                                                                                      
  |                                                                                                |   0%
  |                                                                                                      
  |==                                                                                              |   2%
  |                                                                                                      
  |===                                                                                             |   3%
  |                                                                                                      
  |=====                                                                                           |   5%
  |                                                                                                      
  |======                                                                                          |   6%
  |                                                                                                      
  |========                                                                                        |   8%
  |                                                                                                      
  |=========                                                                                       |  10%
  |                                                                                                      
  |===========                                                                                     |  11%
  |                                                                                                      
  |============                                                                                    |  13%
  |                                                                                                      
  |==============                                                                                  |  15%
  |                                                                                                      
  |===============                                                                                 |  16%
  |                                                                                                      
  |=================                                                                               |  18%
  |                                                                                                      
  |===================                                                                             |  19%
  |                                                                                                      
  |====================                                                                            |  21%
  |                                                                                                      
  |======================                                                                          |  23%
  |                                                                                                      
  |=======================                                                                         |  24%
  |                                                                                                      
  |=========================                                                                       |  26%
  |                                                                                                      
  |==========================                                                                      |  27%
  |                                                                                                      
  |============================                                                                    |  29%
  |                                                                                                      
  |=============================                                                                   |  31%
  |                                                                                                      
  |===============================                                                                 |  32%
  |                                                                                                      
  |=================================                                                               |  34%
  |                                                                                                      
  |==================================                                                              |  35%
  |                                                                                                      
  |====================================                                                            |  37%
  |                                                                                                      
  |=====================================                                                           |  39%
  |                                                                                                      
  |=======================================                                                         |  40%
  |                                                                                                      
  |========================================                                                        |  42%
  |                                                                                                      
  |==========================================                                                      |  44%
  |                                                                                                      
  |===========================================                                                     |  45%
  |                                                                                                      
  |=============================================                                                   |  47%
  |                                                                                                      
  |==============================================                                                  |  48%
  |                                                                                                      
  |================================================                                                |  50%
  |                                                                                                      
  |==================================================                                              |  52%
  |                                                                                                      
  |===================================================                                             |  53%
  |                                                                                                      
  |=====================================================                                           |  55%
  |                                                                                                      
  |======================================================                                          |  56%
  |                                                                                                      
  |========================================================                                        |  58%
  |                                                                                                      
  |=========================================================                                       |  60%
  |                                                                                                      
  |===========================================================                                     |  61%
  |                                                                                                      
  |============================================================                                    |  63%
  |                                                                                                      
  |==============================================================                                  |  65%
  |                                                                                                      
  |===============================================================                                 |  66%
  |                                                                                                      
  |=================================================================                               |  68%
  |                                                                                                      
  |===================================================================                             |  69%
  |                                                                                                      
  |====================================================================                            |  71%
  |                                                                                                      
  |======================================================================                          |  73%
  |                                                                                                      
  |=======================================================================                         |  74%
  |                                                                                                      
  |=========================================================================                       |  76%
  |                                                                                                      
  |==========================================================================                      |  77%
  |                                                                                                      
  |============================================================================                    |  79%
  |                                                                                                      
  |=============================================================================                   |  81%
  |                                                                                                      
  |===============================================================================                 |  82%
  |                                                                                                      
  |=================================================================================               |  84%
  |                                                                                                      
  |==================================================================================              |  85%
  |                                                                                                      
  |====================================================================================            |  87%
  |                                                                                                      
  |=====================================================================================           |  89%
  |                                                                                                      
  |=======================================================================================         |  90%
  |                                                                                                      
  |========================================================================================        |  92%
  |                                                                                                      
  |==========================================================================================      |  94%
  |                                                                                                      
  |===========================================================================================     |  95%
  |                                                                                                      
  |=============================================================================================   |  97%
  |                                                                                                      
  |==============================================================================================  |  98%
  |                                                                                                      
  |================================================================================================| 100%
Stacking table div_1m2Data

  |                                                                                                      
  |                                                                                                |   0%
  |                                                                                                      
  |==                                                                                              |   2%
  |                                                                                                      
  |======                                                                                          |   6%
  |                                                                                                      
  |=========                                                                                       |  10%
  |                                                                                                      
  |============                                                                                    |  13%
  |                                                                                                      
  |===============                                                                                 |  16%
  |                                                                                                      
  |==================                                                                              |  19%
  |                                                                                                      
  |=====================                                                                           |  22%
  |                                                                                                      
  |========================                                                                        |  25%
  |                                                                                                      
  |===========================                                                                     |  29%
  |                                                                                                      
  |==============================                                                                  |  32%
  |                                                                                                      
  |==================================                                                              |  35%
  |                                                                                                      
  |=====================================                                                           |  38%
  |                                                                                                      
  |========================================                                                        |  41%
  |                                                                                                      
  |===========================================                                                     |  44%
  |                                                                                                      
  |==============================================                                                  |  48%
  |                                                                                                      
  |=================================================                                               |  51%
  |                                                                                                      
  |====================================================                                            |  54%
  |                                                                                                      
  |=======================================================                                         |  57%
  |                                                                                                      
  |==========================================================                                      |  60%
  |                                                                                                      
  |=============================================================                                   |  63%
  |                                                                                                      
  |================================================================                                |  67%
  |                                                                                                      
  |===================================================================                             |  70%
  |                                                                                                      
  |======================================================================                          |  73%
  |                                                                                                      
  |=========================================================================                       |  76%
  |                                                                                                      
  |============================================================================                    |  79%
  |                                                                                                      
  |===============================================================================                 |  83%
  |                                                                                                      
  |==================================================================================              |  86%
  |                                                                                                      
  |=====================================================================================           |  89%
  |                                                                                                      
  |========================================================================================        |  92%
  |                                                                                                      
  |===========================================================================================     |  95%
  |                                                                                                      
  |==============================================================================================  |  98%
  |                                                                                                      
  |================================================================================================| 100%
Finished: All of the data are stacked into 2 tables!
Copied the first available variable definition file to /stackedFiles and renamed as variables.csv
Copied the first available validation file to /stackedFiles and renamed as validation.csv
Stacked div_10m2Data100m2Data which has 71375 out of the expected 71375 rows (100%).
Stacked div_1m2Data which has 74736 out of the expected 74736 rows (100%).
Stacking took 13.91035 secs
All unzipped monthly data folders have been removed.

Vegetation structure

Hmm, not useful on its own really

Plant cover

I’m using the 1 meter square data because that’s what Kate suggested. I’m not sure what the other file is

So cover is either a focal plant species (taxonID) or an “other variabe” (otherVariables) such as litter, wood, moss, bare soil. I should combine these columns (after checking that its one or the other always) and then spread them.

Let’s check how many unique plots this is

313 plots. Ok, not so HUGE, but pretty big. WOuld be nice to get this number under 100 while maintaining a big range in elevation and lattitude. Let’s see what I can figure out about each site

Ok, looks like the first 4 sites have a big range in elevation, so I’ll just use those. At some point, I should figure out where these are.

combine and spread

cover.wide <-
  cover2 %>% 
  select(namedLocation, siteID, decimalLatitude, decimalLongitude, elevation, plotID, subplotID, endDate, taxonID, otherVariables, percentCover) %>% 
  mutate(variable = case_when(!is.na(taxonID) ~ taxonID,
                              !is.na(otherVariables) ~ otherVariables,
                              TRUE ~ as.character(NA))) %>% 
  select(-taxonID, -otherVariables) %>% 
  group_by(namedLocation, variable) %>% 
  summarize(meanElevation = mean(elevation, na.rm = TRUE),
            meanLatitude = mean(decimalLatitude, na.rm = TRUE),
            meanLongitude = mean(decimalLongitude, na.rm = TRUE)
            meanPercentCover = mean(percentCover, na.rm = TRUE)) %>% 
Error: unexpected symbol in:
"            meanLongitude = mean(decimalLongitude, na.rm = TRUE)
            meanPercentCover"

Oh, that’s a lot of NAs. Let’s get rid of some columns?

Hmm, maybe just one site? Maybe HARV?

#try pca and plsr

meta <- c("siteID", "namedLocation", "meanElevation", "meanLatitude", "meanLongitude")
test.pca <- opls(select(test, -meta))
test.pls <- opls(select(test, -meta), test$siteID)
har.pls <- opls(select(harv, -meta), harv$meanElevation)
Error in if (modelDF[hN, "R2Y"] < 0.01) { : 
  missing value where TRUE/FALSE needed

Not sure what this error message means, but it’s clearly triggering code that happens when R2Y is less than 0.01, so very bad model.

Try something with litter cover

opls(X, harv.litter$litter)
Error in if (modelDF[hN, "R2Y"] < 0.01) { : 
  missing value where TRUE/FALSE needed

NOPE

LS0tCnRpdGxlOiAiTkVPTiBkYXRhIHdyYW5nbGluZyIKb3V0cHV0OiBodG1sX25vdGVib29rCi0tLQpgYGB7cn0KbGlicmFyeSh0aWR5dmVyc2UpCmxpYnJhcnkoaGVyZSkKbGlicmFyeShuZW9uVXRpbGl0aWVzKQpgYGAKQWZ0ZXIgY2hhdHRpbmcgd2l0aCBLYXRpZSBhdCBORU9OLCB3ZSBkZWNpZGVkIGEgZ29vZCBwbGFjZSB0byBzdGFydCB3b3VsZCBiZSB3aXRoIHNtYWxsIG1hbW1hbCBkYXRhIGFuZCB2ZWdldGF0aW9uIGRhdGEuICBTaGUgcmVjb21tZW5kZWQgdGhyZWUgZGF0YSBwcm9kdWN0czogdGhlIHNtYWxsIG1hbW1hbCB0cmFwcGluZyBkYXRhIHdoaWNoIGlzIGNhcHR1cmUtcmVjYXB0dXJlIGRhdGEgY29sbGVjdGVkIG1vbnRobHkgYW5kIGluY2x1ZGVzIG1vcnBob2xvZ3kgbWVhc3VyZXMgYW5kIHRpY2sgY291bnRzOyB0aGUgcGxhbnQgcHJlc2VuY2UgYW5kIHBlcmNlbnQgY292ZXIgZGF0YSBwcm9kdWN0IHdoaWNoIGluY2x1ZGVzIHByZXNlbmNlIGFuZCBwZXJjZW50IGNvdmVyIG9mIGRpZmZlcmVudCBwbGFudCBzcGVjaWVzOyBhbmQgV29vZHkgUGxhbnQgVmVnZXRhdGlvbiBTdHJ1Y3R1cmUgd2hpY2ggaW5jbHVkZXMgbW9ycGhvbG9naWNhbCBtZWFzdXJlcyBvZiB3b29keSBwbGFudHMKCkxldCdzIHN0YXJ0IHdpdGggd29vZHkgcGxhbnRzLiAgVGhpcyBkYXRhc2V0IGlzIG1lYXN1cmVkIGV2ZXJ5IHRocmVlIHllYXJzLCBzbyBJJ2xsIGdldCB0aHJlZSB5ZWFycyBvZiBkYXRhIGZyb20gYSBidW5jaCBvZiBzaXRlcyBhbmQgY29sbGFwc2UgaXQgZG93biBzb21laG93LgpgYGB7cn0KIyBzdGFja0J5VGFibGUoaGVyZSgiZGF0YSIsICJORU9OIiwgIk5FT05fc3RydWN0LXdvb2R5LXBsYW50LnppcCIpKSAjIG9ubHkgbmVlZCB0byBydW4gb25jZQpzdGFja0J5VGFibGUoaGVyZSgiZGF0YSIsICJORU9OIiwgIk5FT05fcHJlc2VuY2UtY292ZXItcGxhbnQuemlwIikpICMgb25seSBuZWVkIHRvIHJ1biBvbmNlCmBgYAoKIyBWZWdldGF0aW9uIHN0cnVjdHVyZQoKYGBge3J9CnN0cnVjdCA8LSByZWFkX2NzdihoZXJlKCJkYXRhIiwgIk5FT04iLCAiTkVPTl9zdHJ1Y3Qtd29vZHktcGxhbnQiLCAic3RhY2tlZEZpbGVzIiwgInZzdF9hcHBhcmVudGluZGl2aWR1YWwuY3N2IikpCmBgYAoKYGBge3J9CnN0cnVjdCAlPiUgCiAgZmlsdGVyKCFpcy5uYShzdGVtRGlhbWV0ZXIpLAogICAgICAgICAhaXMubmEoaGVpZ2h0KSwKICAgICAgICAgcGxhbnRTdGF0dXMgPT0gIkxpdmUiKSAlPiUgCiAgZ3JvdXBfYnkoaW5kaXZpZHVhbElEKSAlPiUgCiAgc3VtbWFyaXNlKG5hbWVkTG9jYXRpb24gPSBmaXJzdChuYW1lZExvY2F0aW9uKSwKICAgICAgICAgICAgc3RlbURpYW1ldGVyID0gbWVhbihzdGVtRGlhbWV0ZXIpLAogICAgICAgICAgICBoZWlnaHQgPSBtZWFuKGhlaWdodCkpCmBgYApIbW0sIG5vdCB1c2VmdWwgb24gaXRzIG93biByZWFsbHkKCgojIFBsYW50IGNvdmVyCgpJJ20gdXNpbmcgdGhlIDEgbWV0ZXIgc3F1YXJlIGRhdGEgYmVjYXVzZSB0aGF0J3Mgd2hhdCBLYXRlIHN1Z2dlc3RlZC4gIEknbSBub3Qgc3VyZSB3aGF0IHRoZSBvdGhlciBmaWxlIGlzCgpgYGB7cn0KY292ZXIgPC0gcmVhZF9jc3YoaGVyZSgiZGF0YSIsICJORU9OIiwgIk5FT05fcHJlc2VuY2UtY292ZXItcGxhbnQiLCAic3RhY2tlZEZpbGVzIiwgImRpdl8xbTJEYXRhLmNzdiIpKQpgYGAKClNvIGBjb3ZlcmAgaXMgZWl0aGVyIGEgZm9jYWwgcGxhbnQgc3BlY2llcyAoYHRheG9uSURgKSBvciBhbiAib3RoZXIgdmFyaWFiZSIgKGBvdGhlclZhcmlhYmxlc2ApIHN1Y2ggYXMgbGl0dGVyLCB3b29kLCBtb3NzLCBiYXJlIHNvaWwuICBJIHNob3VsZCBjb21iaW5lIHRoZXNlIGNvbHVtbnMgKGFmdGVyIGNoZWNraW5nIHRoYXQgaXRzIG9uZSBvciB0aGUgb3RoZXIgYWx3YXlzKSBhbmQgdGhlbiBzcHJlYWQgdGhlbS4KCmBgYHtyfQpjb3ZlciAlPiUgCiAgZmlsdGVyKCFpcy5uYShvdGhlclZhcmlhYmxlcykgJiAhaXMubmEodGF4b25JRCkpCiMgemVybyByb3dzIGhhdmUgYm90aCBraW5kcyBvZiB2YXJpYWJsZXMKY292ZXIgJT4lIAogIGZpbHRlcihpcy5uYShvdGhlclZhcmlhYmxlcykgJiBpcy5uYSh0YXhvbklEKSkKI2ZpbHRlciB0aGVzZSBvdXQsIHRoZXkgYXJlIE5BcyBpbiBhbGwgaW1wb3J0YW50IGNvbHVtbnMKYGBgCmBgYHtyfQpjb3ZlcjEgPC0KICBjb3ZlciAlPiUgCiAgZmlsdGVyKCEoaXMubmEob3RoZXJWYXJpYWJsZXMpICYgaXMubmEodGF4b25JRCkpKQpgYGAKCkxldCdzIGNoZWNrIGhvdyBtYW55IHVuaXF1ZSBwbG90cyB0aGlzIGlzCgpgYGB7cn0KY292ZXIxICU+JSAKICBncm91cF9ieShwbG90SUQpICU+JSAKICBjb3VudCgpCmBgYAoKMzEzIHBsb3RzLiAgT2ssIG5vdCBzbyBIVUdFLCBidXQgcHJldHR5IGJpZy4gIFdPdWxkIGJlIG5pY2UgdG8gZ2V0IHRoaXMgbnVtYmVyIHVuZGVyIDEwMCB3aGlsZSBtYWludGFpbmluZyBhIGJpZyByYW5nZSBpbiBlbGV2YXRpb24gYW5kIGxhdHRpdHVkZS4gIExldCdzIHNlZSB3aGF0IEkgY2FuIGZpZ3VyZSBvdXQgYWJvdXQgZWFjaCBzaXRlCgpgYGB7cn0KY292ZXIxICU+JSAKICBncm91cF9ieShzaXRlSUQpICU+JSAKICBzdW1tYXJpemUoZWxldl9yYW5nZSA9IG1heChlbGV2YXRpb24pIC0gbWluKGVsZXZhdGlvbikpICU+JSAKICBhcnJhbmdlKGRlc2MoZWxldl9yYW5nZSkpCmBgYApPaywgbG9va3MgbGlrZSB0aGUgZmlyc3QgNCBzaXRlcyBoYXZlIGEgYmlnIHJhbmdlIGluIGVsZXZhdGlvbiwgc28gSSdsbCBqdXN0IHVzZSB0aG9zZS4KQXQgc29tZSBwb2ludCwgSSBzaG91bGQgZmlndXJlIG91dCB3aGVyZSB0aGVzZSBhcmUuCmBgYHtyfQpjb3ZlcjIgPC0KICBjb3ZlcjEgJT4lIAogIGZpbHRlcihzaXRlSUQgJWluJSBjKCJCQVJUIiwgIlNDQkkiLCAiSEFSViIsICJHVUFOIikpCmBgYAoKIyMgY29tYmluZSBhbmQgc3ByZWFkCmBgYHtyfQpjb3Zlci53aWRlIDwtCiAgY292ZXIyICU+JSAKICBzZWxlY3QobmFtZWRMb2NhdGlvbiwgc2l0ZUlELCBkZWNpbWFsTGF0aXR1ZGUsIGRlY2ltYWxMb25naXR1ZGUsIGVsZXZhdGlvbiwgcGxvdElELCBzdWJwbG90SUQsIGVuZERhdGUsIHRheG9uSUQsIG90aGVyVmFyaWFibGVzLCBwZXJjZW50Q292ZXIpICU+JSAKICBtdXRhdGUodmFyaWFibGUgPSBjYXNlX3doZW4oIWlzLm5hKHRheG9uSUQpIH4gdGF4b25JRCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIWlzLm5hKG90aGVyVmFyaWFibGVzKSB+IG90aGVyVmFyaWFibGVzLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICBUUlVFIH4gYXMuY2hhcmFjdGVyKE5BKSkpICU+JSAKICBzZWxlY3QoLXRheG9uSUQsIC1vdGhlclZhcmlhYmxlcykgJT4lIAogIGdyb3VwX2J5KG5hbWVkTG9jYXRpb24sIHZhcmlhYmxlKSAlPiUgCiAgc3VtbWFyaXplKHNpdGVJRCA9IGZpcnN0KHNpdGVJRCksCiAgICAgICAgICAgIG1lYW5FbGV2YXRpb24gPSBtZWFuKGVsZXZhdGlvbiwgbmEucm0gPSBUUlVFKSwKICAgICAgICAgICAgbWVhbkxhdGl0dWRlID0gbWVhbihkZWNpbWFsTGF0aXR1ZGUsIG5hLnJtID0gVFJVRSksCiAgICAgICAgICAgIG1lYW5Mb25naXR1ZGUgPSBtZWFuKGRlY2ltYWxMb25naXR1ZGUsIG5hLnJtID0gVFJVRSksCiAgICAgICAgICAgIG1lYW5QZXJjZW50Q292ZXIgPSBtZWFuKHBlcmNlbnRDb3ZlciwgbmEucm0gPSBUUlVFKSkgJT4lIAogIHNwcmVhZChrZXkgPSB2YXJpYWJsZSwgdmFsdWUgPSBtZWFuUGVyY2VudENvdmVyKSAlPiUgCiAgdW5ncm91cCgpCmBgYAoKYGBge3J9CmNvdmVyLndpZGUKYGBgCk9oLCB0aGF0J3MgYSBsb3Qgb2YgTkFzLiAgTGV0J3MgZ2V0IHJpZCBvZiBzb21lIGNvbHVtbnM/CgpgYGB7cn0KIyBjb3Zlci53aWRlICU+JSAKICAjIHN1bW1hcml6ZV9hbGwoZnVucyhzdW0oIWlzLm5hKC4pKSkpCgp0ZXN0IDwtCiAgY292ZXIud2lkZSAlPiUgCiAgc2VsZWN0X2lmKGZ1bnMoc3VtKCFpcy5uYSguKSkgPiAxMCkpCmBgYAoKSG1tLCBtYXliZSBqdXN0IG9uZSBzaXRlPyBNYXliZSBIQVJWPwoKYGBge3J9CmhhcnYgPC0gY292ZXIud2lkZSAlPiUgCiAgZmlsdGVyKHNpdGVJRCA9PSAiSEFSViIpICU+JSAKICBzZWxlY3RfaWYoZnVucyhzdW0oIWlzLm5hKC4pKSA+IDEwKSkKYGBgCgoKI3RyeSBwY2EgYW5kIHBsc3IKCmBgYHtyfQpsaWJyYXJ5KHJvcGxzKQpgYGAKCmBgYHtyfQptZXRhIDwtIGMoInNpdGVJRCIsICJuYW1lZExvY2F0aW9uIiwgIm1lYW5FbGV2YXRpb24iLCAibWVhbkxhdGl0dWRlIiwgIm1lYW5Mb25naXR1ZGUiKQp0ZXN0LnBjYSA8LSBvcGxzKHNlbGVjdCh0ZXN0LCAtbWV0YSkpCnRlc3QucGxzIDwtIG9wbHMoc2VsZWN0KHRlc3QsIC1tZXRhKSwgdGVzdCRzaXRlSUQpCmBgYAoKYGBge3J9CmhhcnYucGNhIDwtIG9wbHMoc2VsZWN0KGhhcnYsIC1tZXRhKSkKaGFydi5wbHMgPC0gb3BscyhzZWxlY3QoaGFydiwgLW1ldGEpLCBoYXJ2JG1lYW5FbGV2YXRpb24pCmBgYApOb3Qgc3VyZSB3aGF0IHRoaXMgZXJyb3IgbWVzc2FnZSBtZWFucywgYnV0IGl0J3MgY2xlYXJseSB0cmlnZ2VyaW5nIGNvZGUgdGhhdCBoYXBwZW5zIHdoZW4gUjJZIGlzIGxlc3MgdGhhbiAwLjAxLCBzbyB2ZXJ5IGJhZCBtb2RlbC4KCgojIFRyeSBzb21ldGhpbmcgd2l0aCBsaXR0ZXIgY292ZXIKCmBgYHtyfQpoYXJ2LmxpdHRlciA8LSAKICBoYXJ2ICU+JSAKICBtdXRhdGUobGl0dGVyID0gcmVwbGFjZV9uYShsaXR0ZXIsIDApKQpYIDwtIGhhcnYubGl0dGVyICU+JSAKICBzZWxlY3QoLW1ldGEpICU+JSAKICBzZWxlY3QoLWxpdHRlcikKb3BscyhYLCBoYXJ2LmxpdHRlciRsaXR0ZXIpCmBgYApOT1BFCg==